package org.posupe.cursos;

import org.posupe.util.RepositorioException;




public class CadastroCursos {
	

	private RepositorioCursos repositorio;

	public CadastroCursos(RepositorioCursos repositorio){
		this.repositorio = repositorio;
	}

	public void cadastrar(Curso curso) throws CursoJaCadastradoException, RepositorioException{
		if (!repositorio.existe(curso.getCodigo())){
				repositorio.inserir(curso);
		} else {
			throw new CursoJaCadastradoException(curso);
		}

	}
	public void remover(int codigo) throws CursoInexistenteException, RepositorioException{
		repositorio.remover(repositorio.procurar(codigo).getCodigo());
	}
	public void atualizar(Curso curso) throws CursoInexistenteException, RepositorioException {
		repositorio.atualizar(curso);
	}

	public Curso procurar(int codigo) throws CursoInexistenteException, RepositorioException{
		return repositorio.procurar(codigo);
	}	
	public boolean existe(int codigo) throws RepositorioException{
		return repositorio.existe(codigo);
	}
	public IteratorCursos getCursos() throws RepositorioException{
		return repositorio.getIterator();
	}

	public IteratorCursos procurar(Curso curso) throws RepositorioException{
		return repositorio.procurar(curso);
	}


}
